Seamless transition for multiple display refresh rates

ABSTRACT

An example device includes a display component that is configured to operate at a first refresh rate or a second refresh rate. The device also includes one or more processors operable to perform operations. The operations include identifying a rate change triggering event while the display component is operating at the first refresh rate. The operations further include determining a current brightness value of the display component. The operations also include determining, based on an environmental state measurement associated with an environment around the device, a threshold brightness value. The operations additionally include transitioning the display component from the first refresh rate to the second refresh rate m response to identifying the rate change triggering event if the current brightness value of the display component meets or exceeds the threshold brightness value.

CROSS REFERENCE TO RELATED APPLICATIONS

This present application claims priority as a U.S. national stage entryof PCT application serial no. PCT/US2019/054674 filed Oct. 4, 2019, thefull disclosure of which is incorporated herein by reference.

BACKGROUND

A refresh rate may refer to the number of times per second at which animage refreshes on a display of a computing device. For example, arefresh rate of 60 Hertz (Hz) means that an image is refreshed 60 timesper second. Higher refresh rates typically lead to better userexperiences, but also result in higher power usage for the computingdevice.

Sometimes, a display can operate at multiple refresh rates. For example,when executing a video streaming application, a computing device may setthe refresh rate of a display component to 90 Hz, whereas when executinga word processing application, the computing device may set the refreshrate of the display component to 60 Hz.

SUMMARY

The present disclosure generally relates to a display component of acomputing device. The display component may be configured to operate atmultiple refresh rates. Depending on one or more environmental statemeasurements, a controller of the computing device may transition thedisplay component from a first refresh rate to a second refresh rate.

In a first aspect, a device is provided. The device includes a displaycomponent. The display component is configured to operate at a firstrefresh rate or a second refresh rate. The device also includes one ormore processors operable to perform operations. The operations includeidentifying a rate change triggering event while the display componentis operating at the first refresh rate. The operations also includedetermining a current brightness value of the display component. Theoperations further include determining, based on an environmental statemeasurement associated with an environment around the device, athreshold brightness value. The operations additionally includetransitioning the display component from the first refresh rate to thesecond refresh rate in response to identifying the rate changetriggering event if the current brightness value of the displaycomponent meets or exceeds the threshold brightness value.

In a second aspect, a computer-implemented method is provided. Themethod includes identifying, by a computing device, a rate changetriggering event while a display component of the computing device isoperating at a first refresh rate. The display component is configuredto operate at the first refresh rate or a second refresh rate. Themethod also includes determining, by the computing device, a currentbrightness value of the display component. The method further includesdetermining, by the computing device and based on an environmental statemeasurement associated with an environment around the computing device,a threshold brightness value. The method additionally includestransitioning, by the computing device, the display component from thefirst refresh rate to the second refresh rate in response to identifyingthe rate change triggering event if the current brightness value meetsor exceeds the threshold brightness value.

In a third aspect, an article of manufacture is provided. The article ofmanufacture may include a non-transitory computer-readable medium havingstored thereon program instructions that, upon execution by one or moreprocessors of a computing device, cause the computing device to carryout operations. The operations may include identifying a rate changetriggering event while a display component of the computing device isoperating at a first refresh rate, where the display component isconfigured to operate at the first refresh rate or a second refreshrate. The operations further include determining a current brightnessvalue of the display component. The operations also include determining,based on an environmental state measurement associated with anenvironment around the computing device, a threshold brightness value.The operations additionally include transitioning the display componentfrom the first refresh rate to the second refresh rate in response toidentifying the rate change triggering event if the current brightnessvalue meets or exceeds the threshold brightness value.

Other aspects, embodiments, and implementations will become apparent tothose of ordinary skill in the art by reading the following detaileddescription, with reference where appropriate to the accompanyingdrawings.

BRIEF DESCRIPTION OF THE FIGURES

FIG. 1 illustrates a computing device, in accordance with exampleembodiments.

FIG. 2 illustrates a computing device and an environment, in accordancewith example embodiments.

FIG. 3A depicts a graph illustrating display refresh rate versus time,in accordance with example embodiments.

FIG. 3B depicts a graph and a table illustrating idle time versusambient light, in accordance with example embodiments.

FIG. 3C depicts a graph illustrating display brightness versus ambientlight, in accordance with example embodiments.

FIG. 3D depicts a graph and a table illustrating brightness transitionthresholds versus ambient light, in accordance with example embodiments.

FIG. 3E depicts a graph and a table illustrating brightness transitionthresholds versus ambient light for two different idle times, inaccordance with example embodiments.

FIG. 4 illustrates a method, in accordance with example embodiments.

DETAILED DESCRIPTION

Example methods, devices, and systems are described herein. It should beunderstood that the words “example” and “exemplary” are used herein tomean “serving as an example, instance, or illustration.” Any embodimentor feature described herein as being an “example” or “exemplary” is notnecessarily to be construed as preferred or advantageous over otherembodiments or features. Other embodiments can be utilized, and otherchanges can be made, without departing from the scope of the subjectmatter presented herein.

Thus, the example embodiments described herein are not meant to belimiting. Aspects of the present disclosure, as generally describedherein, and illustrated in the figures, can be arranged, substituted,combined, separated, and designed in a wide variety of differentconfigurations, all of which are contemplated herein.

Further, unless context suggests otherwise, the features illustrated ineach of the figures may be used in combination with one another. Thus,the figures should be generally viewed as component aspects of one ormore overall embodiments, with the understanding that not allillustrated features are necessary for each embodiment.

I. Overview

High display refresh rates (e.g., 90 Hz or 120 Hz) for a displaycomponent of a computing device may be desirable when executing visuallycomplex software applications, such as video or gaming applications.However, higher refresh rates also cause the computing device to consumemore power. To strike a balance between performance and battery life,some display components can operate at one of multiple different refreshrates (e.g., 60 Hz and 90 Hz). That is, depending on the applicationbeing executed, the display component can switch between a 60 Hz and a90 Hz refresh rate.

However, optical characteristics may differ between 60 Hz and 90 Hzrefresh rates. Specifically, the luminance and color of the displaycomponent may differ between 60 Hz and 90 Hz. When the display componentswitches from 60 Hz to 90 Hz (and vice versa), this optical differencemay manifest itself as visual flicker on the display component.Consequently, if the display component frequently switches between 60 Hzand 90 Hz refresh rates, the visual flicker may become highly pronouncedand detrimental to a user's experience. Further, because human eyes arehighly sensitive to luminance and/or color changes at low brightnesssettings, the visual flicker is especially noticeable when thebrightness of the display component is low and/or when the ambient lightof the environment surrounding the display component is low.

Some solutions attempt to solve this “flicker problem” by disablingtransitions between 60 Hz and 90 Hz when the brightness of the displaycomponent is low. But an issue with these solutions is that thedefinition of what is considered “low display brightness” can be fairlyhigh. In some example devices, the ideal brightness transition thresholdto alleviate all flickering has been found to be 75%. In other words, ifthe brightness of the display component is at or above 75% of the totalpossible brightness of the display component, then transitions between60 Hz and 90 Hz may be permitted. And if the brightness of the displaycomponent is below 75% of the total possible brightness, thentransitions between 60 Hz and 90 Hz may not be permitted. But becauseusers often keep the brightness of the display component below 75%,minimum benefits of using multiple refresh rates are obtained.

Some techniques described herein address these issues by dynamicallyadjusting the brightness transition threshold based on a current ambientlight measurement. Specifically, a computing device may disabletransitions between 60 Hz and 90 Hz when the ambient light measurementis low, and then may gradually lower the brightness transition thresholdas the ambient light measurement increases. For example, at 1 lux, thebrightness transition threshold may be set to 75% of the total possiblebrightness of the display component. At 90 lux, the brightnesstransition threshold may be set to 67% of the total possible brightnessof the display component, and so on. Moreover, other environmentalmeasurements, such as ambient temperature, may also be utilized todynamically adjust the brightness transition threshold as well orinstead.

Additionally, some embodiments described herein may dynamically adjustthe time in which the display component remains at 90 Hz after a lastdisplay event (e.g., a last interaction of a user with a graphical userinterface, e.g. a touch on the display component or a gesture detectedby radar, or a last application update). In other words, aftertransitioning from 60 Hz to 90 Hz, the methods described herein candynamically adjust the time that the display component waits beforetransitioning back to 60 Hz from 90 Hz. By dynamically adjusting thiswaiting time, high amounts of “flip-flopping” between the 60 Hz and the90 Hz refresh rate can be prevented, which has a positive effect on userexperience.

By using the herein-described techniques, multiple refresh rates can beutilized while reducing or eliminating any flicking effect. Otheradvantages are also contemplated and will be appreciated from thediscussion herein.

II. Example Devices

FIG. 1 illustrates computing device 100, in accordance with exampleembodiments. Computing device 100 includes display component 110, one ormore ambient light sensors 120, one or more other sensors 130, networkinterface 140, and controller 150. In some examples, computing device100 may take the form of a desktop computing device, a server device, ora mobile computing device. Computing device 100 may be configured tointeract with an environment. For example, computing device 100 mayobtain environmental state measurements associated with an environmentaround computing device 100 (e.g., temperature measurements, ambientlight measurements, etc.).

Display component 110 may be configured to provide output signals to auser by way of one or more screens (including touch screens), cathoderay tubes (CRTs), liquid crystal displays (LCDs), light emitting diodes(LEDs), displays using digital light processing (DLP) technology, and/orother similar technologies. Display component 110 may also be configuredto generate audible outputs, such as with a speaker, speaker jack, audiooutput port, audio output device, earphones, and/or other similardevices. Display component 110 may further be configured with one ormore haptic components that can generate haptic outputs, such asvibrations and/or other outputs detectable by touch and/or physicalcontact with computing device 100.

In example embodiments, display component 110 is configured to provideoutput signals at a given refresh rate. The refresh rate may correspondto the number of times display component 110 updates with new contenteach second. For example, a 60 Hz refresh rate may mean that displaycomponent 110 updates 60 times per second. In example embodiments,display component 110 may operate at a 60 Hz, a 90 Hz, or a 120 Hzrefresh rate, among other possibilities.

Ambient light sensor(s) 120 may be configured to receive light from anenvironment of (e.g., within 1 meter (m), 5 m, or 10 m of) computingdevice 100. Ambient light sensor(s) 120 may include one or more singlephoton avalanche detectors (SPADs), avalanche photodiodes (APDs),complementary metal oxide semiconductor (CMOS) detectors, and/orcharge-coupled devices (CCDs). For example, ambient light sensor(s) 120may include indium gallium arsenide (InGaAs) APDs configured to detectlight at wavelengths around 1550 nanometers (nm). Other types of ambientlight sensor(s) 120 are possible and contemplated herein.

In some embodiments, ambient light sensor(s) 120 may include a pluralityof photodetector elements disposed in a one-dimensional array or atwo-dimensional array. For example, ambient light sensor(s) 120 mayinclude sixteen detector elements arranged in a single column (e.g., alinear array). The detector elements could be arranged along, or couldbe at least parallel to, a primary axis.

In some embodiments, computing device 100 can include one or more othersensors 130. Other sensor(s) 130 can be configured to measure conditionswithin computing device 100 and/or conditions in an environment of(e.g., within 1 m, 5 m, or 10 m of) computing device 100 and providedata about these conditions. For example, other sensor(s) 130 caninclude one or more of: (i) sensors for obtaining data about computingdevice 100, such as, but not limited to, a thermometer for measuring atemperature of computing device 100, a battery sensor for measuringpower of one or more batteries of computing device 100, and/or othersensors measuring conditions of computing device 100; (ii) anidentification sensor to identify other objects and/or devices, such as,but not limited to, a Radio Frequency Identification (RFID) reader,proximity sensor, one-dimensional barcode reader, two-dimensionalbarcode (e.g., Quick Response (QR) code) reader, and/or a laser tracker,where the identification sensor can be configured to read identifiers,such as RFID tags, barcodes, QR codes, and/or other devices and/orobjects configured to be read, and provide at least identifyinginformation; (iii) sensors to measure locations and/or movements ofcomputing device 100, such as, but not limited to, a tilt sensor, agyroscope, an accelerometer, a Doppler sensor, a Global PositioningSystem (GPS) device, a sonar sensor, a radar device, alaser-displacement sensor, and/or a compass; (iv) an environmentalsensor to obtain data indicative of an environment of computing device100, such as, but not limited to, an infrared sensor, an optical sensor,a biosensor, a capacitive sensor, a touch sensor, a temperature sensor,a wireless sensor, a radio sensor, a movement sensor, a proximitysensor, a radar receiver, a microphone, a sound sensor, an ultrasoundsensor and/or a smoke sensor; and/or (v) a force sensor to measure oneor more forces (e.g., inertial forces and/or G-forces) acting aboutcomputing device 100, such as, but not limited to one or more sensorsthat measure: forces in one or more dimensions, torque, ground force,friction, and/or a zero moment point (ZMP) sensor that identifies ZMPsand/or locations of the ZMPs. Many other examples of other sensor(s) 130are possible as well.

Data gathered from ambient light sensors(s) 120 and other sensor(s) 130may be communicated to controller 150, which may use the data to performone or more actions on display component 110, as further describedherein.

Network interface 140 can include one or more wireless interfaces and/orwireline interfaces that are configurable to communicate via a network.Wireless interfaces can include one or more wireless transmitters,receivers, and/or transceivers, such as a Bluetooth™ transceiver, aZigbee® transceiver, a Wi-Fi™ transceiver, a WiMAX™ transceiver, and/orother similar types of wireless transceivers configurable to communicatevia a wireless network. Wireline interfaces can include one or morewireline transmitters, receivers, and/or transceivers, such as anEthernet transceiver, a Universal Serial Bus (USB) transceiver, orsimilar transceiver configurable to communicate via a twisted pair wire,a coaxial cable, a fiber-optic link, or a similar physical connection toa wireline network.

In some embodiments, network interface 140 can be configured to providereliable, secured, and/or authenticated communications. For eachcommunication described herein, information for facilitating reliablecommunications (e.g., guaranteed message delivery) can be provided,perhaps as part of a message header and/or footer (e.g., packet/messagesequencing information, encapsulation headers and/or footers, size/timeinformation, and transmission verification information such as cyclicredundancy check (CRC) and/or parity check values). Communications canbe made secure (e.g., be encoded or encrypted) and/or decrypted/decodedusing one or more cryptographic protocols and/or algorithms, such as,but not limited to, Data Encryption Standard (DES), Advanced EncryptionStandard (AES), a Rivest-Shamir-Adelman (RSA) algorithm, aDiffie-Hellman algorithm, a secure sockets protocol such as SecureSockets Layer (SSL) or Transport Layer Security (TLS), and/or DigitalSignature Algorithm (DSA). Other cryptographic protocols and/oralgorithms can be used as well or in addition to those listed herein tosecure (and then decrypt/decode) communications.

Controller 150 may include one or more processors 152 and memory 154.Processor(s) 152 can include one or more general purpose processorsand/or one or more special purpose processors (e.g., digital signalprocessors (DSPs), tensor processing units (TPUs), graphics processingunits (GPUs), application specific integrated circuits (ASICs), etc.).Processor(s) 152 may be configured to execute computer-readableinstructions that are contained in memory 154 and/or other instructionsas described herein. Memory 154 may include one or more non-transitorycomputer-readable storage media that can be read and/or accessed byprocessor(s) 152. The one or more non-transitory computer-readablestorage media can include volatile and/or non-volatile storagecomponents, such as optical, magnetic, organic or other memory or discstorage, which can be integrated in whole or in part with at least oneof processor(s) 152. In some examples, memory 154 can be implementedusing a single physical device (e.g., one optical, magnetic, organic orother memory or disc storage unit), while in other examples, memory 154can be implemented using two or more physical devices.

In example embodiments, processor(s) 152 are configured to executeinstructions stored in memory 154 so as to carry out operations.

The operations may include identifying a rate change triggering eventwhile the display component 110 is operating at a first refresh rate.For example, display component 110 may be operating at a first 60 Hzrefresh rate. In some embodiments, the rate change triggering eventinvolves a physical interaction between a user and a graphical userinterface displayed by display component 110. In some embodiments, therate change triggering event involves information received from othersensor(s) 130 or network interface 140.

The operations may also include determining a current brightness valueof the display component 110. In some embodiments, the currentbrightness value can be a relative value. For example, the currentbrightness value may be a percentage of a total possible brightness fordisplay component 110 (e.g., 45% or 55%). In some embodiments, thecurrent brightness value may be an absolute value. For example, thecurrent brightness value may be a value expressed in candelas per asquare meter value or nits (e.g., 60 nits or 80 nits).

The operations may further include determining, based on anenvironmental state measurement associated with an environment aroundthe computing device 100, a threshold brightness value. In someembodiments, the environmental state measurement may include an ambientlight measurement measured by ambient light sensor(s) 120. In someembodiments, the environmental state measurement includes measurementsmeasured by other sensor(s) 130, for example, ambient temperatures orsound levels around computing device 100. In some embodiments, thethreshold brightness value may be determined with respect to a totalpossible brightness for display component 110. For example, thethreshold brightness value may be determined as 40% or 60% of the totalpossible brightness for display component 110.

The operations may also include transitioning display component 110 fromthe first refresh rate to the second refresh rate in response toidentifying the rate change triggering event if the current brightnessvalue of the display component meets or exceeds the threshold brightnessvalue. For example, controller 150 may transition display component 110from a 60 Hz refresh rate to a 90 Hz refresh rate.

FIG. 2 illustrates a relationship between computing device 100 andenvironment 200, in accordance with example embodiments. Environment 200may represent the environment surrounding computing device 100 andincludes light source 210 and triggering event 220.

Light source 210 may include ambient light from the environment 200. Inparticular, light source 210 may include light from the sun or lightreflected off of objects in environment 200, among other light sources.

Ambient light sensor(s) 120 may be optically-coupled to environment 200.That is, the arrangement of ambient light sensor(s) 120 within computingdevice 100 may enable ambient light sensor(s) 120 to detect light source210 from a field of view of environment 200.

In example embodiments, ambient light sensor(s) 120 may capture themagnitude of light source 210 so as to produce ambient light measurement212. Then, ambient light measurement 212 may be communicated by ambientlight sensor(s) 120 to controller 150. Based on the value of ambientlight measurement 212, controller 150 may perform one or more actions214 on display component 110. For example, action(s) 214 may includecontroller 150 transitioning display component 110 from a 60 Hz refreshrate to a 90 Hz refresh rate or vice versa. In some embodiments,action(s) 214 may be based in part on current display brightness 216,which may represent a current brightness of display component 110.Current display brightness 216 may be communicated by display component110 to controller 150.

Triggering event 220 may represent an event external to computing device100. Triggering event 220 may act on display component 110. In someembodiments, triggering event 220 may include a user touching a touchscreen interface of display component 110. Multiple triggering eventsmay occur. For example, a first triggering event may correspond to auser making a first touch on a touch screen interface of displaycomponent 110, whereas a second triggering event may correspond to theuser making a last touch on a touch screen interface of displaycomponent 110. In some embodiments, triggering event 220 may causedisplay component 110 to communicate rate change trigger event 218 tocontroller 150, which may responsively perform action(s) 214 based onrate change trigger event 218.

In some embodiments, triggering event 220 may be an event occurringinternally in computing device 100. For example, triggering event 220may be a communication received by network interface 140 andcommunicated to controller 150.

While FIG. 2 illustrates a particular arrangement of elements, otherarrangements are possible. Additionally or alternatively, some elementsof computing device 100 and environment 200 may be combined and/orrearranged.

FIGS. 3A, 3B, 3C, 3D, and 3E depict various graphs and tables thatillustrate relationships between ambient light measurements, brightnesstransition thresholds, and idle times. Namely, the graphs and tables ofFIGS. 3A, 3B, 3C, 3D, and 3E are provided as examples of graphs andtables that may be utilized by controller 150 to adjust the refresh rateof display component 110.

FIG. 3A depicts graph 300, in accordance with example embodiments. Graph300 illustrates the refresh rate of display component 110 over time.

During time period 302 (e.g., between time t₀ and t₁), the refresh rateof display component 110 is shown to be 60 Hz. In some embodiments, 60Hz may correspond to a default refresh rate of the display component110.

At t₁, the refresh rate of display component 110 transitions from 60 Hzto 90 Hz. This transition may be in response to a first rate changetriggering event. For example, the first rate change triggering eventmay include a device driven event or a physical interaction with displaycomponent 110. Device driven events may include, for example, anotification received from a remote computing device (e.g., via networkinterface 140), a battery related event (e.g., battery level ofcomputing device 100 being below 40%), or an application related event(e.g., computing device 100 beginning the execution of a visuallycomplex software application, such as a video or gaming application),among other possibilities. Physical interactions may involve a firstuser touch on display component 110.

After the first rate change triggering event, time period 304 occurs.During time period 304 (e.g., between time t₁ and t₂), the refresh rateof display component 110 remains at 90 Hz.

At t₂, a second rate change triggering event occurs. For example, thesecond rate change triggering event may include a second device drivenevent or a second physical interaction with display component 110.Second device driven events may include, for example, a lastnotification received from a remote computing device (e.g., via networkinterface 140) or second application related event (e.g., computingdevice 100 ending the execution of a visually complex softwareapplication, such as a video or gaming application), among otherpossibilities. Second physical interactions may involve a last usertouch on display component 110.

After the second rate change triggering event, time period 306 occurs.During time period 306 (e.g., between time t₂ and t₃), the refresh rateof display component 110 remains at 90 Hz. This time period may also bereferred to herein as an “idle time” or a “threshold amount of time”.After waiting the threshold period of time (e.g., time period 306) fromthe second rate change triggering event, display component 110 maytransition back to the 60 Hz refresh rate.

During time period 308 (e.g., from time t₃ onward), the refresh rate ofdisplay component 110 remains at 60 Hz. Display component 110 maycontinue to remain at the 60 Hz refresh rate until another first ratechange triggering event occurs.

While the ability to transition between 60 Hz and 90 Hz refresh ratesincreases the overall battery life of computing device 100, somesituations may cause an undesirable user experience. In particular, ifthe user types slowly (e.g., a long amount of time between two inputs),display component 110 may switch back and forth between the 60 Hz and 90Hz refresh rates. This may result in undesirable flickering to be shownon display component 110. While one solution to address this issue is toincrease idle time duration, this solution may result in high powerconsumption, as the display component is operating at the 90 Hz refreshrate longer than necessary.

To address these issues, some examples described herein provide for thedynamic adjustment of the threshold period of time from the second ratechange triggering event (e.g., time period 308). In particular,threshold period of time can be adjusted based on an environmental statemeasurement associated with an environment around computing device 100.For example, the threshold period of time can be adjusted based on acurrent ambient light measurement or a current ambient temperaturemeasurement.

FIG. 3B depicts graph 310 and table 312, in accordance with exampleembodiments. Graph 310 and table 312 illustrate a relationship betweenidle time of display component 110 (e.g., the threshold period of timefrom the second rate change triggering event) and the amount of ambientlight measured by ambient light sensor(s) 120. Namely, as the amount ofambient light measured by ambient light sensor(s) 120 increases, idletime may be decreased. Since flickering is highly pronounced at lowlevels of ambient light, high idle times may be used for low levels ofambient light in order to reduce the frequency of refresh rate changesat low levels of ambient light. A higher idle time reduces the impact offlickering at low levels of ambient light.

In example embodiments, controller 150 may utilize the relationshipdepicted in graph 310 and/or table 312 to set the idle time for displaycomponent 110. That is, controller 150 may (i) receive an ambient lightmeasurement from ambient light sensor(s) 120, (ii) use the ambient lightmeasurement and graph 310 and/or table 312 to determine a correspondingidle time, and (iii) set the idle time for display component 110 to thecorresponding idle time. As a particular example, if the ambient lightmeasurement is 245 lux, controller 150 may determine a correspondingidle time of 500 milliseconds (ms). Other examples of ambient lightmeasurements and corresponding idle times are also contemplated herein.

FIG. 3C depicts graph 320, in accordance with example embodiments. Graph320 illustrates a relationship between the display brightness of displaycomponent 110 and the amount of ambient light received by ambient lightsensor(s) 120. Namely, graph 320 illustrates three separate brightnesszones: flicker acceptable zone 322, flicker somewhat acceptable zone324, and flicker not acceptable zone 326. As described above, becausehuman eyes are highly sensitive to luminance and/or color changes at lowbrightness settings, the visual flickering is especially noticeable whenthe brightness of display component 110 is low and/or when the ambientlight of the environment surrounding computing device 100 is low. Inparticular, when ambient light is lower than 40 lux and the displaybrightness is lower than 30%, visual flickering becomes highlyconspicuous and detrimental to the user experience. As ambient lightincreases to between 40 lux and 60 lux and/or the display brightnessincreases to between 30% and 60%, flicker becomes somewhat acceptable,as the user may only slightly notice the flickering effect. Once theambient light increases beyond 60 lux and/or the display brightnessincreases beyond 60%, flicker becomes unproblematic and acceptable, asthe user may not notice any flickering effect. Accordingly, the currentambient light and current display brightness of display component 110may influence when refresh rate changes are acceptable (e.g., whenflickering becomes less conspicuous). Consequently, it may be desirableto adjust when transitions between 60 Hz and 90 Hz are permitted basedon the current ambient light and current display brightness of displaycomponent 110 (e.g., by using a variable brightness transition thresholddependent on ambient light).

FIG. 3D depicts graph 330 and table 332, in accordance with exampleembodiments. Graph 330 and table 332 illustrate a relationship betweenthe brightness transition threshold of display component 110 and theamount of ambient light received by ambient light sensor(s) 120. Namely,as the amount of ambient light measured by ambient light sensor(s) 120increases, the brightness transition threshold may be decreased. Sinceflickering is less conspicuous at high levels of ambient light, morerefresh rate transitions may be allowed at higher levels of ambientlight. The performance of display component 110 may therefore beimproved without introducing the negative effects of flickering.

In example embodiments, controller 150 may utilize the relationshipdepicted in graph 330 and/or table 332 to set the brightness transitionthreshold for display component 110. That is, controller 150 may (i)receive an ambient light measurement from ambient light sensor(s) 120,(ii) use the ambient light measurement and graph 330 and/or table 332 todetermine a corresponding brightness transition threshold, and (iii) setthe brightness transition threshold for display component to thecorresponding brightness transition threshold. As a particular example,if the ambient light measurement is 245 lux, controller 150 maydetermine a corresponding brightness transition threshold of 65%. Thismeans that if the brightness of the display component is at or above 65%of the total possible brightness of the display component, thentransitions between 60 Hz and 90 Hz are permitted. And if the brightnessof the display component is below 65% of the total possible brightness,then transitions between 60 Hz and 90 Hz are not permitted. Otherexamples of ambient light measurements and brightness transitionthresholds are also contemplated herein.

FIG. 3E depict graph 340 and table 342, in accordance with exampleembodiments. Graph 340 and table 342 illustrate a relationship betweenthe brightness transition threshold of display component 110 and theamount of ambient light received by ambient light sensor(s) 120 for twodifferent idle times: a 200 ms idle time and a 500 ms idle time. Inparticular, graph 340 and table 342 combines the concepts of graphs 310,320, and 330 and tables 312 and 332 by using the amount of ambient lightto determine: (i) what the particular brightness transition thresholdshould be, and (ii) what the idle time at that particular brightnesstransition threshold should be. For example, 200 ms transition zone 342represents a region where transitions between 60 Hz and 90 Hz arepermitted and the idle time of those transitions (e.g., the time untilthe display component transitions back to 60 Hz from 90 Hz after asecond rate change triggering event) is 200 ms. Further, 500 mstransition zone 344 represents a region where transitions between 60 Hzand 90 Hz are also permitted and the idle time of those transitions is500 ms. And finally, no transition zone 346 represents an area wheretransitions between 60 Hz and 90 Hz are not permitted. Accordingly, fora given amount of ambient light, the current brightness of displaycomponent 110 is used to select between one of three buckets: notransitions between 60 Hz and 90 Hz (e.g., no transition zone 346), sometransitions between 60 Hz and 90 Hz (e.g., 500 ms transition zone 344),or relatively more transitions (because of lower idle time) between 60Hz and 90 hz (e.g., 200 ms transition zone 342). For example, if thecurrent amount of ambient light is 50 lux and the current brightness is87%, then the display component may be permitted to transition between60 Hz and 90 Hz at an idle time of 500 ms (e.g., the current amount ofambient light and current brightness may fall within 500 ms transitionzone 344).

III. Example Methods

FIG. 4 illustrates a method 400, in accordance with example embodiments.Method 400 may include various blocks or steps. The blocks or steps maybe carried out individually or in combination. The blocks or steps maybe carried out in any order and/or in series or in parallel. Further,blocks or steps may be omitted or added to method 400.

The blocks of method 400 may be carried out by various elements ofcomputing device 100 as illustrated and described in reference to FIGS.1 and 2 . Furthermore, method 400 may utilize the relationships depictedin graphs 300, 310, 320, 330, and/or 340 and/or tables 312 332, and/or342 that are illustrated and described with regard to FIGS. 3A, 3B, 3C,3D, and 3E.

Block 410 includes identifying, by a computing device, a rate changetriggering event while a display component of the computing device isoperating at a first refresh rate. The rate change triggering event mayinvolve a device driven event on the display component (e.g., displaycomponent 110). The device driven event may include, for example, anotification received from a remote computing device (e.g., via networkinterface 140) or a battery level event (e.g., battery level being below40%), among other possibilities. In some embodiments, the rate changetriggering event involves a physical interaction between a user and thedisplay component. This physical interaction may involve a first usertouch on the display component.

In some embodiments, the computing device is configured to operate atthe first refresh rate or a second refresh rate. For instance, the firstrefresh rate may be 60 Hz and the second refresh rate may be 90 Hz.Other refresh rates may also be used with the methods described herein.

Block 420 includes determining, by the computing device, a currentbrightness value of the display component. In some embodiments,determining the current brightness value includes receiving from thedisplay component, by way of a wired or wireless communication link, acurrent brightness value. Other ways to determine the current brightnessvalue are possible and contemplated.

Block 430 includes determining, by the computing device and based on anenvironmental state measurement associated with an environment aroundthe computing device, a threshold brightness value.

In some embodiments, the environmental state measurement includes acurrent ambient light measurement measured by an ambient light sensor(e.g., ambient light sensor(s) 120) of the computing device. The ambientlight sensor may be configured to capture a current ambient lightmeasurement (e.g., in lux) from the environment around the computingdevice.

In some embodiments, the environmental state measurement includes acurrent ambient temperature measurement measured by an ambienttemperature sensor (e.g., one of other sensor(s) 130) of the computingdevice. The ambient temperature sensor may be configured to capture acurrent ambient temperature measurement (e.g., in Celsius) from theenvironment around the computing device.

Block 440 includes transitioning, by the computing device, the displaycomponent from the first refresh rate to the second refresh rate inresponse to identifying the rate change triggering event if the currentbrightness value meets or exceeds the threshold brightness value.

In some embodiments, higher values for the current ambient lightmeasurement correspond to lower values for the threshold brightnessvalue, and lower values for the current ambient light measurementcorrespond to higher values for the threshold brightness value. Forexample, at a current ambient light measurement of 1 lux, the thresholdbrightness value may be 75% of the total possible brightness of thedisplay component. At 90 lux, the threshold brightness value may be 67%of the total possible brightness of the display component. Other valuesmay also be used.

Some embodiments include identifying a second rate change triggeringevent while the display component is operating at the second refreshrate. After a threshold period of time from the second rate changetriggering event, these embodiments include transitioning the displaycomponent from the second refresh rate to the first refresh rate. Forexample, the threshold period of time may be 80 ms from the second ratechange triggering event

In some embodiments, the second rate change triggering event involves aphysical interaction with the display component (e.g., display component110). For example, the physical interaction may include a userperforming a last touch on the display component.

In some embodiments, the threshold period of time is determined based onthe environmental state measurement associated with the environmentaround the device. For example, the threshold period of time may bedetermined by a current ambient light measurement. In these embodiments,higher values for the environmental state measurement correspond tolower values for the threshold period of time and lower values for theenvironmental state measurement correspond to higher values for thethreshold period of time. For example, at a current ambient lightmeasurement of 1 lux, the threshold period of time may be 3000 ms. At 90lux, the threshold period of time may be 1000 ms. Other values may alsobe used.

In some embodiments, if the current brightness value meets or exceedsthe threshold brightness value, the display component is configured totransition from the second refresh rate to the first refresh rate aftera first threshold period of time from a second rate change triggeringevent. In these embodiments, the operations of the one or moreprocessors further include determining, based on the environmental statemeasurement, a second threshold brightness value. If the currentbrightness value (i) meets or exceeds the second threshold brightnessvalue and (ii) falls below the threshold brightness value, the displaycomponent is configured to transition from the second refresh rate tothe first refresh rate after a second threshold period of time from thesecond rate change triggering event.

In some embodiments, the first threshold period of time is less than thesecond threshold period of time. For example, the first threshold periodof time may be 200 ms and the second threshold period of time may be 500ms.

The particular arrangements shown in the Figures should not be viewed aslimiting. It should be understood that other embodiments may includemore or less of each element shown in a given Figure. Further, some ofthe illustrated elements may be combined or omitted. Yet further, anillustrative embodiment may include elements that are not illustrated inthe Figures.

A step or block that represents a processing of information cancorrespond to circuitry that can be configured to perform the specificlogical functions of a herein-described method or technique.Alternatively or additionally, a step or block that represents aprocessing of information can correspond to a module, a segment, or aportion of program code (including related data). The program code caninclude one or more instructions executable by a processor forimplementing specific logical functions or actions in the method ortechnique. The program code and/or related data can be stored on anytype of computer readable medium such as a storage device including adisk, hard drive, or other storage medium.

The computer readable medium can also include non-transitory computerreadable media such as computer-readable media that store data for shortperiods of time like register memory, processor cache, and random accessmemory (RAM). The computer readable media can also includenon-transitory computer readable media that store program code and/ordata for longer periods of time. Thus, the computer readable media mayinclude secondary or persistent long term storage, like read only memory(ROM), optical or magnetic disks, compact-disc read only memory(CD-ROM), for example. The computer readable media can also be any othervolatile or non-volatile storage systems. A computer readable medium canbe considered a computer readable storage medium, for example, or atangible storage device.

While various examples and embodiments have been disclosed, otherexamples and embodiments will be apparent to those skilled in the art.The various disclosed examples and embodiments are for purposes ofillustration and are not intended to be limiting, with the true scopebeing indicated by the following claims.

What is claimed is:
 1. A device comprising: a display component, wherein the display component is configured to operate at a first refresh rate or a second refresh rate; and one or more processors operable to perform operations, the operations comprising: identifying a rate change triggering event while the display component is operating at the first refresh rate; determining a current brightness value of the display component; determining, based on an environmental state measurement associated with an environment around the device, a threshold brightness value; transitioning the display component from the first refresh rate to the second refresh rate in response to identifying the rate change triggering event if the current brightness value of the display component meets or exceeds the threshold brightness value; identifying a second rate change triggering event while the display component is operating at the second refresh rate; and after a threshold period of time from the second rate change triggering event, transitioning the display component from the second refresh rate to the first refresh rate.
 2. The device of claim 1, further comprising an ambient light sensor configured to receive ambient light measurements from the environment around the device, wherein the environmental state measurement comprises a current ambient light measurement received by the ambient light sensor from the environment around the device.
 3. The device of claim 2, wherein higher values for the current ambient light measurement correspond to lower values for the threshold brightness value, and wherein lower values for the current ambient light measurement correspond to higher values for the threshold brightness value.
 4. The device of claim 2, wherein lower values for the current ambient light measurement correspond to lower values for the threshold brightness value, and wherein higher values for the current ambient light measurement correspond to higher values for the threshold brightness value.
 5. The device of claim 1, wherein the rate change triggering event is initiated by a process running on the device.
 6. The device of claim 1, wherein the rate change triggering event comprises a user interaction with the display component.
 7. The device of claim 1, further comprising an ambient temperature sensor configured to receive ambient temperature measurements from the environment around the device, wherein the environmental state measurement comprises a current ambient temperature measurement received by the ambient temperature sensor from the environment around the device.
 8. The device of claim 1, wherein the threshold period of time is 80 ms.
 9. The device of claim 8, wherein the second rate change triggering event comprises a user interaction with a graphical user interface displayed by the display component.
 10. The device of claim 9, wherein the user interaction of the second rate change triggering event comprises a user performing a last gesture with the graphical user interface.
 11. The device of claim 8, wherein the threshold period of time is determined based on the environmental state measurement associated with the environment around the device.
 12. The device of claim 11, wherein higher values for the environmental state measurement correspond to lower values for the threshold period of time, and wherein lower values for the environmental state measurement correspond to higher values for the threshold period of time.
 13. The device of claim 11, wherein lower values for the environmental state measurement correspond to lower values for the threshold period of time, and wherein higher values for the environmental state measurement correspond to higher values for the threshold period of time.
 14. The device of claim 1, wherein if the current brightness value meets or exceeds the threshold brightness value, the display component is configured to transition from the second refresh rate to the first refresh rate after a first threshold period of time from the second rate change triggering event, and wherein the operations further comprise: determining, based on the environmental state measurement, a second threshold brightness value, wherein if the current brightness value (i) meets or exceeds the second threshold brightness value and (ii) falls below the threshold brightness value, the display component is configured to transition from the second refresh rate to the first refresh rate after a second threshold period of time from the second rate change triggering event.
 15. The device of claim 14, wherein the first threshold period of time is less than the second threshold period of time.
 16. The device of claim 14, wherein the first threshold period of time is 200 ms.
 17. The device of claim 14, wherein the second threshold period of time is 500 ms.
 18. A computer-implemented method comprising: identifying, by a computing device, a rate change triggering event while a display component of the computing device is operating at a first refresh rate, wherein the display component is configured to operate at the first refresh rate or a second refresh rate; determining, by the computing device, a current brightness value of the display component; determining, by the computing device and based on an environmental state measurement associated with an environment around the computing device, a threshold brightness value, wherein the environmental state measurement comprises a current ambient light measurement received by an ambient light sensor from the environment, wherein higher values for the current ambient light measurement correspond to lower values for the threshold brightness value, and wherein lower values for the current ambient light measurement correspond to higher values for the threshold brightness value; and transitioning, by the computing device, the display component from the first refresh rate to the second refresh rate in response to identifying the rate change triggering event if the current brightness value meets or exceeds the threshold brightness value.
 19. An article of manufacture including a non-transitory computer-readable medium, having stored thereon program instructions that, upon execution by one or more processors of a computing device, cause the computing device to carry out operations comprising: identifying a rate change triggering event while a display component of the computing device is operating at a first refresh rate, wherein the display component is configured to operate at the first refresh rate or a second refresh rate; determining a current brightness value of the display component; determining, based on an environmental state measurement associated with an environment around the computing device, a threshold brightness value; transitioning the display component from the first refresh rate to the second refresh rate in response to identifying the rate change triggering event if the current brightness value meets or exceeds the threshold brightness value; identifying a second rate change triggering event while the display component is operating at the second refresh rate; and after a threshold period of time from the second rate change triggering event, transitioning the display component from the second refresh rate to the first refresh rate.
 20. The device of claim 1, wherein the first rate change triggering event comprises one or more of a notification received from a remote computing device, an event associated with a battery level of the device, or an application related event. 